package trabalho.es;

import trabalho.es.Evento;

public class Gerente extends Usuario {
	
	public Gerente(){
		this.set_userType(UserType.GERENTE);
	}

	@Override
	public void Cadastrar(String _nome, String _local, String _data, String _tipo, int _ingressos, int _preco) {
		Evento novo = new Evento();
		novo.set_strNome(_nome);
		novo.set_strLocal(_local);
		novo.set_strData(_data);
		novo.set_strTipo(_tipo);
		novo.set_intNumeroIngressos(_ingressos);
		novo.set_intPreco(_preco);
		Sistema.getSistema().get_lstEventos().add(novo);		
	};
	
	@Override
	public void EditarEvento(String _evento, String _nome, String _local, String _data, String _tipo, String _ingressos, String _preco){
		Evento _editado = Sistema.getSistema().BuscarEvento(_evento);
		if ( _editado == null)
			return;
		if (!_nome.isEmpty())
			_editado.set_strNome(_nome);
		if (!_local.isEmpty())
			_editado.set_strLocal(_local);
		if (!_data.isEmpty())
			_editado.set_strData(_data);
		if (!_tipo.isEmpty())
			_editado.set_strTipo(_tipo);
		if (!_ingressos.isEmpty())
			_editado.set_intNumeroIngressos(Integer.parseInt(_ingressos));
		if(!_preco.isEmpty())
			_editado.set_intPreco(Integer.parseInt(_preco));
	};
	
	@Override
	public void Exclui(String _evento){
		Evento evento = Sistema.getSistema().BuscarEvento(_evento);
		if (evento == null) return;
		if (Sistema.getSistema().get_lstEventos().contains(evento))
			Sistema.getSistema().get_lstEventos().remove(evento);
	};
	
	@Override
	public void GerarRelatorio(){
		int num = 0;
		for (Historico x : Sistema.getSistema().get_Historico()){
			System.out.print("Entrada " + (num++) + " : ");
			x.Imprimir();
			System.out.println();
		}
	};	
}
